package com.ruoyi.basedata.mapper;

import java.util.List;
import com.ruoyi.basedata.domain.WfzBank;
import com.ruoyi.basedata.domain.WfzBankentry;
import org.apache.ibatis.annotations.Param;

/**
 * 银行对照Mapper接口
 *
 * @author lxl
 * @date 2023-02-15
 */
public interface WfzBankMapper
{
    /**
     * 查询银行对照
     *
     * @param fid 银行对照主键
     * @return 银行对照
     */
    public WfzBank selectWfzBankByFid(Long fid);

    /**
     * 查询银行对照列表
     *
     * @param wfzBank 银行对照
     * @return 银行对照集合
     */
    public List<WfzBank> selectWfzBankList(WfzBank wfzBank);

    /**
     * 新增银行对照
     *
     * @param wfzBank 银行对照
     * @return 结果
     */
    public int insertWfzBank(WfzBank wfzBank);

    /**
     * 修改银行对照
     *
     * @param wfzBank 银行对照
     * @return 结果
     */
    public int updateWfzBank(WfzBank wfzBank);

    /**
     * 删除银行对照
     *
     * @param fid 银行对照主键
     * @return 结果
     */
    public int deleteWfzBankByFid(Long fid);

    /**
     * 批量删除银行对照
     *
     * @param fids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteWfzBankByFids(Long[] fids);

    /**
     * 批量删除银行对照分录
     *
     * @param fids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteWfzBankentryByFparentids(Long[] fids);

    /**
     * 批量新增银行对照分录
     *
     * @param wfzBankentryList 银行对照分录列表
     * @return 结果
     */
    public int batchWfzBankentry(List<WfzBankentry> wfzBankentryList);


    /**
     * 通过银行对照主键删除银行对照分录信息
     *
     * @param fid 银行对照ID
     * @return 结果
     */
    public int deleteWfzBankentryByFparentid(Long fid);

    /**
     * 通过表头id和 金融机构查询分录信息
     * @param fid
     * @param fbank
     * @return
     */
    List<WfzBankentry> selectBankEntry(@Param("fid") Long fid, @Param("fbank") String fbank);

}
